import Vue from 'vue'
import App from './App'

Vue.config.productionTip = false

App.mpType = 'app'

const app = new Vue({
    ...App
})
app.$mount()
/**
 * 检查用户是否授权
 * 如果授权检查用户信息是否完整
 */
Vue.prototype.checkLogin = function(){
	const token = uni.getStorageSync('token')
	// console.log("获取到token"+token)
	if(token === ''){ // 本地没有token表示未登录
		console.log('未登录返回到登录页')
		uni.redirectTo({url:'/pages/welcome/welcome'})
		return false
	}else{
		//获取用户信息
		uni.request({
		    url: this.apiurl + '/user/user_info', 
		    header: {
		        'Authorization': uni.getStorageSync('token') //自定义请求头信息
		    },
		    success: (res) => {
		        if(!res.data.data.name){
					uni.redirectTo({url:'/pages/details/details'})
					return false
				}
				return true
		    }
		});
	}
}
/**
 * 静默登录
 */
Vue.prototype.aginLogin = function(){
	wx.login({
		success: res => {
			uni.request({
				url: this.apiurl + '/user/login', 
				data: {
					code: res.code
				},
				header: {
					'custom-header': 'hello' //自定义请求头信息
				},
				success: (res) => {
					// console.log(typeof(res.data.data) );
					this.token = res.data.data;
					console.log('token:'+this.token)
					// 存储token与用户info
					
					try {
						console.log(this.token, this.userInfo)
						uni.setStorageSync('token', this.token);
					} catch (e) {
						// error
						console.log(e)
					}
					
						uni.connectSocket({
						    url: 'wss://www.mrslu.top/websocket?userCode='+uni.getStorageSync("token"), //仅为示例，并非真实接口地址。
						    
						});
						uni.onSocketOpen(function (res) {
						  console.log('WebSocket连接已打开！');
						});
						
						setInterval(()=>{
							uni.sendSocketMessage({
							  data: 'msg'
							});},29000)
						
						  
						uni.onSocketMessage(function (res) {
						  console.log('收到服务器内容：' + res.data);
						});
					
					
				}
			});
		}
	})
}

//查询签到任务
Vue.prototype.findSign = function() {
				uni.request({
					url: this.apiurl + '/sign/user_task', //仅为示例，并非真实接口地址。
					header: {
						'Authorization': uni.getStorageSync('token') //自定义请求头信息
					},
					data: {
						pageNum: 1,
						pageSize: 20
					},
					success: (res) => {
						console.log(res.data)
						
						if(res.data.list.length)
						return true;
						return false;
					}
					
				});
				// return false;
			}

/**
 * websocket
 */
Vue.prototype.mySocket = function(){
	uni.connectSocket({
	    url: 'wss://www.mrslu.top/websocket?userCode='+uni.getStorageSync("token"), //仅为示例，并非真实接口地址。
	    
	});
	uni.onSocketOpen(function (res) {
	  console.log('WebSocket连接已打开！');
	});
	
	setInterval(()=>{
		uni.sendSocketMessage({
		  data: '心跳'
		});},29000)
	
	  
	uni.onSocketMessage(function (res) {
	  console.log('收到服务器内容：' + res.data);
	  wx.setTabBarItem({
	    index: 0,
	    text: 'text',
	    iconPath: '/path/to/iconPath',
	    selectedIconPath: '/path/to/selectedIconPath'
	  })
	});
}

Vue.prototype.apiurl = "https://mrslu.top/onclock";

//预留优化：
//1.图标优化
//2.分页显示优化
//3.创建签到任务优化